A growing number of portable devices are currently available to consumers. Examples of such portable devices include music players, digital cameras, video cameras, digital recorders and personal digital assistants (PDAs). To facilitate the connection between these devices and a host computer, the computer typically has an operating system configured to detect a particular portable device when it is connected to the computer. Once detected, the computer operating system can enable communication with the portable device.
Despite the best efforts of the providers of portable devices, such devices inevitably fail at one time or another. One type of failure is a crash. A crash occurs while a program module is running on the device and results in the suspension of operations on the device. Crashes are frustrating to users and, in some cases, may result in loss of information stored on a device. Though failures may greatly impact the usability of a device, providers of portable devices generally have limited means to discover the prevalence and causes of these failures.
In contrast, certain computer systems utilize a persistent network connection to report device usage and failure data. When an error occurs on such a networked-computer, the computer generates and submits an error report over the network. For example, a software provider may receive error reports and other computer usage information from many different computers. With this feedback, the software provider may improve their product and send updated software to their customers. By utilizing network connections, the software provider can receive information describing the operation of its products and can maintain a relationship with its end users.
Portable devices, however, generally do not maintain a persistent network connection or have the ability to connect to a network. Accordingly, it is difficult for providers of these devices to receive error data. Further, these providers have limited means to communicate product updates and other information to their customers. In short, providers of portable device are often unable to maintain a relationship with device users and are unable to receive important device usage and failure data from such end-users.